rs485是协议吗Word文档下载推荐.docx
《rs485是协议吗Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《rs485是协议吗Word文档下载推荐.docx(6页珍藏版)》请在冰豆网上搜索。
例如:
视频服务器都带有多个Rs422串行通讯接口,每个接口均可通过Rs422通讯线由外部计算机控制实现记录与播放。
视频服务器除提供各种控制硬件接口外,还提供协议接口,如Rs422接口除支持Rs422的profile协议外,还支持louth、odetics、bVw等通过Rs422控制的协议。
Rs-232、Rs-422与Rs-485都是串行数据接口标准,都是由电子工业协会(eia)制订并发布的,Rs-232在1962年发布。
Rs-422由Rs-232发展而来,为改进Rs-232通信距离短、速率低的缺点,Rs-422定义了一种平衡通信接口,将传输速率提高到10mbps,传输距离延长到4000英尺(速率低于100kbps时),并允许在一条平衡总线上连接最多10个接收器。
Rs-422是一种单机发送、多机
接收的单向、平衡传输规范,被命名为tia/eia-422-a标准。
为扩展应用范围,eia又于1983年在Rs-422基础上制定了Rs-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为tia/eia-485-a标准。
1.s-232串行接口标准
目前Rs-232是pc机与通信工业中应用最广泛的一种串行接口。
Rs-232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。
Rs-232采取不平衡传输方式,即所谓单端通讯。
收、发端的数据信号是相对于信号地。
典型的Rs-232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平在+5~+15V,负电平在-5~-15V电平。
当无数据传输时,线上为ttl,从开始传送数据到结束,线上电平从ttl电平到Rs-232电平再返回ttl电平。
接收器典型的工作电平在+3~+12V与-3~-12V。
由于发送电平与接收电平的差仅为2V至3V左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约15米,最高速率为20kbps。
Rs-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为3kΩ~7kΩ。
所以Rs-232适合本地设备之间的通信。
2.Rs-422与Rs-485串行接口标准
(1)平衡传输
Rs-422、Rs-485与Rs-232不一样,数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为a,另
一线定义为b。
通常情况下,发送驱动器a、b之间的正电平在+2~+6V,是一个逻辑状态,负电平在-2V~6V,是另一个逻辑状态。
另有一个信号地c,在Rs-485中还有一“使能”端,而在Rs-422中这是可用可不用的。
“使能”端是用于控制发送驱动器与传输线的切断与连接。
当“使能”端起作用时,发送驱动器处于高阻状态,称作“第三态”,即它是有别于逻辑“1”与“0”的第三态。
(2)Rs-422电气规定
由于接收器采用高输入阻抗和发送驱动器比Rs232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。
即一个主设备(master),其余为从设备(salve),从设备之间不能通信,所以Rs-422支持点对多的双向通信。
Rs-422四线接口由于采用单独的发送和接收通道,因此不必控制数据方向,各装置之间任何必须的信号交换均可以按软件方式(xon/xoFF握手)或硬件方式(一对单独的双绞线)实现。
Rs-422的最大传输距离为4000英尺(约1219米),最大传输速率为10mbps。
其平衡双绞线的长度与传输速率成反比,在100kbps速率以下,才可能达到最大传输距离。
只有在很短的距离下才能获得最高速率传输。
一般100米长的双绞线上所能获得的最大传输速率仅为1mbps。
Rs-422需要一终接电阻,要求其阻值约等于传输电缆的特性阻抗。
在矩距离传输时可不需终接电阻,即一般在300米以下不需终接电阻。
终接电阻接在传输电缆的最远端。
(3)Rs-485电气规定
由于Rs-485是从Rs-422基础上发展而来的,所以Rs-485许多电气规定与Rs-422相仿。
如都采用平衡传输方式、都需要在传输线上接终接电阻等。
Rs-485可以采用二线与四线方式,二线制可实现真正的多点双向通信。
Rs-485总线,在要求通信距离为几十米到上千米时,广泛采用Rs-485串行总线标准。
Rs-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。
加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。
Rs-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。
Rs-485用于多点互连时非常方便,可以省掉许多信号线。
应用Rs-485可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。
Rs-485与Rs-422的不同还在于其共模输出电压是不同的,Rs-485是-7V至+12V之间,而Rs-422在-7V至+7V之间;
Rs-485满足所有Rs-422的规范,所以Rs-485的驱动器可以用在Rs-422网络中应用。
Rs-485与Rs-422一样,其最大传输距离约为1219米,最大传输速率为10mbps。
平衡双绞线的长度与传输速率成反比,在100kbps速率以下,才可能使用规定最长的电缆长度。
一般100米长双绞线最大传输速率仅为1mbps。
(4)Rs-422与Rs-485的网络安装注意要点
篇二:
Rs485-modebus通讯协议
Rs485-modebus通讯协议
1.字元结构1.1
10―bit字元框(FoRascii模式)
1位起始位、7位数据位(低位在前,高位在后)、2位停止位(无校验时)1位起始位、7位数据位(低位在前,高位在后)、1位偶校验位、1位停止位(有校验时)1位起始位、7位数据位(低位在前,高位在后)、1位奇校验位、1位停止位(有校验时)
1.2
11―bit字元框(FoRRtu模式)
1位起始位、8位数据位(低位在前,高位在后)、2位停止位(无校验时)1位起始位、8位数据位(低位在前,高位在后)、1位偶校验位、1位停止位(有校验时)1位起始位、8位数据位(低位在前,高位在后)、1位奇校验位、1位停止位(有校验时)波特率:
1200,2400,4800,9600,19200,384002.通信资料格式
2.3功能码:
03h:
读出暂存器内容06h:
写入一个woRd至暂存器08h:
回路侦测
2.3.1功能码03h:
读出暂存器内容
例如:
主机(如pc)对地址01h处的从机(如仪表)进行数据读取操作:
将从机起始暂存器地址为2000h处的两
个连续地址空间中的数据读取出来,表示方法如下
Rtu模式:
ascii模式:
2.3.2功能码06h:
写入一个woRd至暂存器
主机(如pc)对地址01h处的从机(如仪表)进行数据写入操作:
主机将数据03e8h写入到从机暂存器
20xxh地址中,表示方法如下
2.3.3功能码08h:
2.4.错误通讯时的额外回应:
当控制器(从机如仪表)做通信连接时,如果产生错误,此时控制器(从机如仪表)会回应错误码且将Functioncodeand80h回应给主控系统(主机如pc),让主控系统(主机如pc)知道有错误产生。
错误通信时错误码具体涵义请参考“错误码的意义”表格
ascii模式:
注:
其中将原功能码and80h后返回,并在exceptcode中返回错误码(见下表格)
2.5ascii模式检查码(lRccheck)
将从address开始到datacontent结束之间的数进行相加,再对相加的和值取其补码就得出检查码。
用“错误通讯时的额外回应”来计算lRc检查码,具体计算方法如下
01h+08h+00h+00h+12h+34h=4Fh,再对4Fh取补码后的值=b1h
4Fh的原码值为01001111b,4Fh的反码值为10110000b,4Fh的补码值为10110001b原码与补码的运算规则是:
补码=原码取反+1
2.6Rtu模式的检查码(cRccheck)
检查码计算数据由address开始到datacontent结束。
其运算规则如下:
步骤1:
令16-bit暂存器(cRc暂存器)=FFFFh
步骤2:
将第一个8-bitebyte的讯息指令与16-bitecRc暂存器中的数据按位做exclusiveoR(异或),将异
或后的结果存入到16-bitecRc暂存器内。
一个8-bitebyte讯息指令为8位,在参与运算时高八位补充为00h,讯息指令数据从address~datacontent
步骤3:
将cRc暂存器中的数据向右移出一位,空出cRc暂存器的最高位,将0补入到cRc暂存器的最
高位
篇三:
Rs485通讯modbus协议
modbus通讯协议说明
一.通讯说明
控制器采用Rs-485总线,协议符合modbusRtu规约。
数据传输均采用8位数据位、1位停止位、无奇偶校验位。
波特率可设为1200-9600bit/s。
通讯传送分为独立的信息头,和发送的编码数据。
以下的通讯传送方式定义与Rtu通讯规约相兼
初始结构=>
=4字节的时间地址码=1字节功能码=1字节数据区=n字节
错误校检=16位cRc码结束结构=>
=4字节的时间
地址码:
地址码为通讯传送的第一个字节。
这个字节表明由用户设定地址码的从机将接收由主机发送来的信息。
并且每个从机都有具有唯一的地址码,并且响应回送均以各自的地址码开始。
主机发送的地址码表明将发送到的从机地址,而从机发送的地址码表明回送的从机地址。
功能码:
通讯传送的第二个字节。
modbus通讯规约定义功能号为1到127。
本控制器利用其中的一部分功能码。
作为主机请求发送,通过功能码告诉从机执行什么动作。
作为从机响应,从机发送的功能码与从主机发送来的功能码一样,并表明从机已响应主机进行操作。
如果从机发送的功能码的最高位(比如功能码大于127),则表明从机没有响应操作或发送出错。
数据区:
数据区是根据不同的功能码而不同。
cRc码:
二字节的错误检测码。
当通讯命令发送至仪器时,符合相应地址码的设备接通讯命令,并除去地址码,读取信息,如果没有出错,则执行相应的任务;
然后把执行结果返送给发送者。
返送的信息中包括地址码、执行动作的功能码、执行动作后结果的数据以及错误校验码。
如果出错就不发送任何信息。
1
2.信息帧格式:
(1)
地址码是信息帧的第一字节(8位),从0到255。
这个字节表明由用户设置地址的从机将接收由主机发送来的信息。
每个从机都必须有唯一的地址码,并且只有符合地址码的从机才能响应回送。
当从机回送信息时,相当的地址码表明该信息来自于何处。
(2)功能码:
主机发送的功能码告诉从机执行什么任务。
表2列出的功能码都有具体的含义及操作。
(3)数据区:
_
数据区包含需要从机执行什么动作或由从机采集的返送信息。
这些信息可以是数值、参考地址等等。
例如,功能码告诉从机读取寄存器的值,则数据区必需包含要读取寄存器的起始地址及读取长度。
对于不同的从机,地址和数据信息都不相同。
(4)错误校验码:
主机或从机可用校验码进行判别接收信息是否出错。
有时,由于电子噪声或其它一些干扰,信息在传输过程中会发生细微的变化,错误校验码保证了主机或从机对在传送过程中出错的信息不起作用。
这样增加了系统的安全和效率。
错误校验采用cRc-16校验方法。
cRc码低字节在前。
信息帧的格式都基本相同:
地址码、功能码、数据区和错误校验码。
(rs485是协议吗)3.错误校验
参与冗余循环码(cRc)计算的包括:
地址码、功能码、数据区的字节。
冗余循环码包含2个字节,即16位二进制。
cRc码由发送设备计算,放置于发送信息的尾部。
接收信息的设备再重新计算接收到信息的cRc码,比较计算得到的cRc码是否与接收到的相符,如果两者不相符,则表明出错。
cRc码的计算方法是,先预置16位寄存器全为1。
再逐步把每8位数据信息进行处理。
在进行cRc码计算时只用8位数据位,起始位及停止位,如有奇偶校验位的话也包括奇偶校验位,都不参与cRc码计算。
在计算cRc码时,8位数据与寄存器的数据相异或,得到的结果向低位移一字节,用0填补最高位。
再检查最低位,如果最低位为1,把寄存器的内容与预置数相异或,如果最低位为0,不进行异或运算。
这个过程一直重复8次。
第8次移位后,下一个8位再与现在寄存器的内容相异或,这个过程与以上一样重复8次。
当所有的数据信息处理完后,最后寄存器的内容即为cRc码值。
计算cRc码的步骤为:
(1).预置16位寄存器为十六进制FFFF(即全为1)。
称此寄存器为cRc寄存器;
(2).把第一个8位数据与16位cRc寄存器的低位相异或,把结果放于cRc寄存器;
(3).把寄存器的内容右移一位(朝低位),用0填补最高位,检查最低位(注意:
这时的最低位指移位前的最低位,不是移位后的最低位);
(4).如果最低位为0:
重复第3步(再次移位)
如果最低位为1:
cRc寄存器与多项式a001(1010000000000001)进行异或;
(5).重复步骤3和4,直到右移8次,这样整个8位数据全部进行了处理;
(6).重复步骤2到步骤5,进行下一个8位数据的处理;
(7).最后得到的cRc寄存器即为cRc码。
4.功能码03,读取点和返回值:
利用通讯命令,可以进行读取点(“保持寄存器”)或返回值(“输入寄存器”)。
一次
最多可读取寄存器数是15。
由于一些可编程控制器不用功能码03,所以功能码03被用作读取点和返回值。
从机响应的命令格式是从机地址、功能码、数据区及cRc码。
数据区的数据都是每二个字节高位在前,cRc码低位在前高位在后。
信息帧格式举例:
从机地址为01,寄存器地址0001h表示计数值地址。
此例中计数值为:
000001
主机发送字节数举例
从机地址101发送至从机01功能码103读取寄存器
地址代码200起始地址为000101
cRc码230由主机计算得到的cRc码5c
从机响应字节数举例
从机地址101来自从机0功能码103读取寄存器
读出数据数量104long型数据长4byte
计数值数据4000000
01计数值4byte
cRc码204由从机计算得到的cRc码
45
5.功能码06,单点保存:
主机利用这条命令把单点数据保存到控制器的存储器。
控制器也用这个功能码向主机返送信息。
控制器地址为01,保存地址0002的1个值。
在此例中,数据保存结束后,控制器中地址为0008内的内容为02h。
从机地址101发送至从机01功能码106单点保存
地址代码200起始地址为000202
写入数据0400
0000
64保存的数据为64h
cRc码29F由主机计算得到的cRc码ec从机响应字节数举例
从机地址101来自从机01功能码106单点保存
操作结果100数据设置成功
cRc
码218由主机计算得到的cRc码28
6.数据错误返回值:
如果主机发出的数据错误,则控制器向主机回送错误信息,功能码的最高位为1,即控制器返
回给主机的功能码是在主机已送的功能码上加128。
从机返回的错误码的格式如下:
地址码:
1字节
1字节(最高位为1)错误码:
1字节cRc码:
错误码为00h:
cRc码错;
01h-02h:
功能码未知
二.接线说明
一条总线连接多个表的接线图
乐清市信尔电子有限公司