tianxu_unison 发表于 2004-1-7 19:02:48

还是RS485、咱们这学期就先把工业串行总线学通吧~~~

RS-485总线<br>
<br>
从目前解决MCU之间中长距离通信的诸多方案分析来看,RS-485因硬件设计简单、控制方便、成本低廉等优点,在消防、水文、水利自动报测、楼宇控制等工程中被广泛使用。但RS-485总线存在自适应、自保护功能脆弱、通信效率低等缺点,如不注意一些细节的处理常出现通信失败甚至系统瘫痪等故障,因此提高RS-485总线的运行可靠性至关重要。本文介绍在工程应用中使用RS-485的经验体会。<br>
<br>
1 RS-485的电源选择<br>
<br>
对于由MCU结合RS-485微系统组建的测控网络,应优先采用各微系统独立供电方案,最好不要采用一台大电源给微系统并联供电,同时电源线(交直流)不能与RS-485信号线共用同一股多芯电缆。RS-485信号线宜选用截面积0.75mm2以上双绞线而不是平直线。对于每个小容量直流电源选用线性电源LM7805比选用开关电源更合适。当然应注意LM7805的保护:<br>
<br>
1.LM7805输入端与地应跨接220~1000μF电解电容;<br>
<br>
2.LM7805输入端与输出端反接1N4007二极管;<br>
<br>
3.LM7805输出端与地应跨接470~1000μF电解电容和104pF独石电容并反接1N4007二极管;<br>
<br>
4.输入电压以8~10V为佳,最大允许范围为6.5~24V。可选用TI的PT5100替代LM7805,以实现9~38V的超宽电压输入。<br>
<br>
2 RS-485的硬件设计<br>
<br>
RS-485芯片供电电压为4.5~5.5V,可与MCU共用5V电源。因RS-485总线为并接式二线制接口,一旦有一只芯片故障就可能将总线“拉死”,因此对其二线口VA、VB与总线之间应加以隔离。一种简单可行的方法是:VA、VB与总线之间各串接一只4~10Ω的PTC电阻,同时与地之间各跨接5V的TVS二极管以消除线路浪涌干扰。如没有PTC电阻和TVS二极管可用普通电阻和稳压管代替。为防止干扰信号误触发RO(接收器输出)负跳变(RO的负跳变是通信接收的关键),建议将RO外接10kΩ上拉电阻。对于收发控制端TC建议采用MCU引脚通过反相器进行控制,不宜采用MCU引脚直接进行控制以防止MCU上电时对总线的干扰。对外置设备为防止强电磁(雷电)冲击,建议选用TI的75LBC184等防雷击芯片。<br>
<br>
3 RS-485网络的建立<br>
<br>
RS-485网络通常采用特性阻抗为120Ω双绞线作传输介质,传输速率300b/s~115.2kb/s兼容,为异步半双工结构。网络节点数与所选RS-485芯片驱动能力和接收器的输入阻抗有关,如75LBC184标称最大值为64点,MAX1487E标称最大值为128点。实际使用时,因线缆长度、线径、网络分布、传输速率不同,实际接点数均达不到理论值。例如75LBC184运用在500m分布的RS-485网络上节点数超过50或速率大于9.6kb/s时工作可靠性明显下降。根据笔者经验,节点数应按最大值的70%选取,传输速率在1200~9600b/s之间选取,通信距离1km以内,从通信效率、节点数、通信距离等综合考虑选用4800b/s最佳。通信距离1km以上时应通过增加中继模块或降低速率的方法提高传输可靠性。<br>
<br>
理论上讲,RS-485节点与主干之间距离即T头越短越好。T头小于10m的节点采用T型连接对网络匹配并无太大影响,可放心使用,但对于节点间距非常小(小于1m,如LED模块组合屏)应采用星型连接,若采用T型或串珠型连接就不能正常工作。RS-485是一种半双工结构通信总线,大多用于一对多点的通信系统,因此主机(PC)应置于一端,不要置于中间而形成主干的T型分布,同时位于总线两端的差分端口VA与VB之间应跨接120Ω匹配电阻,以减少由于不匹配而引起的反射。<br>
<br>
4 提高RS-485通信效率<br>
<br>
RS-485通常应用于一对多点的主从应答式通信系统中,相对于RS-232等全双工总线效率低了许多,因此选用合适的通信协议及控制方式非常重要。<br>
<br>
1.总线稳态控制(握手信号)大多数使用者选择在数据发送前1ms将收发控制端TC置成高电平,使总线进入稳定的发送状态后才发送数据;数据发送完毕再延迟1ms后置TC端成低电平,使可靠发送完毕后才转入接收状态。据笔者使用TC端的延时有4个机器周期已满足要求;<br>
<br>
2.为保证数据传输质量,对每个字节进行校验的同时,应尽量减少特征字和校验字。惯用的数据包格式由引导码、长度码、地址码、命令码、数据、校验码、尾码组成,每个数据包长度达20~30字节。在RS-485系统中这样的协议不太简练,因此向大家介绍适合RS-485使用的MODBUS标准协议。MODBUS协议采用下传8个字节,上传7个字节的方式进行通信,现已广泛使用于水利、水文、电力等行业设备及系统的国际标准中。<br>
<br>
MODBUS协议规定:上位机发送8个字节召测指令,其中地址、设备类别、通信路由、指令类别、指令长度、指令各占1个字节,CRC校验码占2个字节;下位机应答7个字节,地址、设备类别、数据长度各占1个字节,数据、CRC校验码各占2个字节。<br>
<br>
MODBUS协议规定CRC校验规则:CRC初始化为&HFFFF(CRC_L=&HFF,CRC_H=&HFF),将CRC_L与传输的第一个字节进行异或运算,然后将CRC进行右移(不循环)并判断:如移出的位为1,则CRC再与&HA001进行一次异或运算;如移出的位为0,则CRC不变。如此右移8次即完成第一个字节的校验,重复上述运算及右移直至将全部字节校验完毕,所

xmznt 发表于 2004-1-7 19:14:09

Re:还是RS485、咱们这学期就先把工业串行总线学通吧~~~

工业串行总线,是一种最早应用到电脑行业的一种总线类型,不过现在已经不常见了,因为它的工作频率太低,只有1.25MHz,16bit总线.不过还有不少!

tianxu_unison 发表于 2004-1-7 19:23:18

Re:还是RS485、咱们这学期就先把工业串行总线学通吧~~~

其实“工业串行总线”、有很多种理解方式的、比如说现在的以太网、也有——(AnyBus Communicator) 工业以太网串行网关呀!~~~~~~所以说、就连现在的“大型机”都是用小型机并行/串行链接做成的呢~~还有现在的最新的硬盘接口也是串行处理的~~~嘿嘿~~、俺又在给人~叫劲了~~~

CHYW 发表于 2004-1-8 16:51:38

Re:还是RS485、咱们这学期就先把工业串行总线学通吧~~~

RS232转RS485线

willwheel 发表于 2007-12-18 04:56:24

re:RS485,RS232是针对MCU与PC...

RS485,RS232是针对MCU与PC之间的通信是吧?我想了解一下探头与MCU(报警控制主机)之间的通信方式?是采用IIC吗?如何编码?

发表于 2008-1-31 02:03:45

re:学习了。

学习了。

tonyxie 发表于 2008-1-31 17:52:31

re:学习下

学习下

neutron 发表于 2008-2-23 22:28:00

Modubus通讯网关

产品概述:<br><br>·ModBus协议已经成为开放式的,有众多支持厂商的广泛应用的工业协议。ModBus协议已成为越来越多打算采用数据通信协议的首选协议。 <br>·ModBus/RTU协议定义了主战如何实时读取或写入数据到一个或多个从站的串行协议。虽然ModBus协议不是最强有力的协议,但它足够简单并且有很高的灵活性,能够应用于任何工业场合。 <br>·ModBus/TCP协议是ModBus/RTU协议的扩展,它定义了ModBus/RTU协议如何在其于TCP/IP的网络中传输和应用。 <br>·ModBus/TCP跟ModBus/RTU协议一样简单灵活。 <br><br><br>主要特点: <br><br>·ModBus从站:通常用于工业现场的设备,能连续不断的运转。例如流量计、温控设备、湿度控制等。从站总是被动地等待主站来要求他们上报数据或接受主站发来的新数据。<br><br>·ModBus主站:通常是一些工作站或PC,运行“人机界面”软件来监视、调整、维护从站的操作。主站总是主动发出信息要求从站响应。<br><br>·ModBus/TCP主站与ModBus/TCP从站的通信<br><br>·ModBus/TCP主站与ModBus/RTU串行从站通信<br><br>·ModBus/RTU串行主站与ModBus/TCP从站通信<br><br>·ModBus/RTU主站与ModBus/RTU从站<br><br>通过ModBus数据网关DNS-M可完成上述四种通信模式 <br>

langtuodianzi 发表于 2008-3-15 23:47:59

re:RS485总线:TED485SA...

RS485总线:<br>
<br>
TED485SA半导体类气体防雷管(浪拓电子技术)<br>
具有反应速度快,寄生电容小(<1pF),浪涌耐量大(>300A@10/700uS)等特性,特别适合用于RS485接口的初级防护。 我们的建议是使用TED485SA防雷管为基础,构建初级和次级的两级防雷电路,可以实现对RS485接口的整体防雷击和过压保护.<br>
通讯线路的雷击模拟测试,现普遍采用的是国际电联ITU-T K20(局端使用)和ITU-T K21(用户端使用)标准,测试方法为10/700uS;1KV和10/700uS;4KV,正反向各打5次。<br>

xinlixin 发表于 2008-3-22 05:44:26

re:学习

学习 
页: [1] 2
查看完整版本: 还是RS485、咱们这学期就先把工业串行总线学通吧~~~