This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] SN65HVD12:总线上超过5个器件出现故障

Guru**** 2386620 points
Other Parts Discussed in Thread: SN65HVD12
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1311754/sn65hvd12-more-than-5-devices-on-the-bus-fails

主题中讨论的其他器件:SN65HVD12

尊敬的所有人:

我已将 RS485 IC (SN65HVD12)连接到 LPC2387FBD100K 微控制器。附加的是参考图像、

通信通过使用 UART 进行。

我面临多从机通信的问题、成功地观察到5个从机工作正常。

超过5个从器件不工作、如果我将第6个从器件连接到设备、那么它不工作意味着仍然有5个从器件工作、但第6个从器件不工作。

我的目标是连接10多个从器件通信。

请提供帮助、如果 需要其他文档、请告知我。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、sagar:

    那么、我可以向您提出几个问题、以帮助您找出应用中的问题。  

    1.您使用的网络拓扑是什么-(菊花链、脊柱+接线盒、起始、环等) ?  

    2.总线的最大长度是多久?  

    3.您运行的数据速率是多少?  

    请告诉我、因为我认为部分问题最有可能与上述问题有关。  

    接下来、我想指出我对原理图的一些关注点-我假设所有节点的设计都是相同的-如果情况不是这样、请告知我。  

    1)、因此该设置不符合 RS 至485标准。 在 RS 至485中、有多项要求-但最大的两项是正确的端接和最大总线负载;这种设置看起来会违反这两者。  

    1a)和因此在 RS 至485中、两个端子节点(START 和 END 节点)应通过一个120欧姆电阻器端接在 A 和 B 之间、并且总线的特性阻抗也应适当。 120欧姆。 这是为了通过减轻反射来提高总线上的信号质量(无论数据速率是否缓慢、在信号转换期间都可能发生反射、因为此时会有很多更高频率的信号成分)。 现在、虽然 RS -485未指定特定的网络拓扑-由于端接要求、最佳选择是菊花链、后跟带接线盒的脊柱-但强烈建议使用所有其他拓扑。  错误的 SI 可能导致通信故障。  

    1b)所有 RS -485器件均设计为能够并行驱动32个单元负载-由于该器件是1/8单元负载、其理论最大值为每条总线256个通信节点。 但是-这假设总线上没有其他负载、即您有非常大的偏置电阻器。 32个并联单元负载也可以显示为其近似阻抗值、即375欧姆。 由于原理图显示1k 处的偏置电阻器-如果5个并联、则仅这些电阻器就超出了375欧姆的最小负载。 如果您想稍微增大接收器的噪声容限、那么可以使用1对1k 偏置电阻器-但在每个节点上、1k 将不起作用。 我建议说2件事、您可以做其中任何一件事。 第一个是、如果您希望最终的偏置值为1k -那么如果您有10个节点、每个电阻器的偏置值应为10k  

    基本上、以下公式将给出向每个节点添加偏置电阻器时的最大节点数。  

    以下公式假设、如果系统中有 N 个节点、则有 N 对偏置电阻器。 此外、假设1/8单元负载器件的输入阻抗为96k、这就是96000值的来源。  

    因此、添加外部偏置电阻器时的最大节点数为256 * R_bias /(R_bias + 96000)。 因此、对于1k 的 Rbias、在进入使驱动器过载的地方之前、最大节点数应介于2和3个节点之间。  

    但为了简化 BOM 成本-您可以只使用1对1k 电阻器、而不必将它们添加到每个节点。 一般来说、我们建议仅将偏置电阻器添加到一个节点-但如果您更容易避免这样做、那么 Rbias 值将需要增加。  

     

    请告诉我这三个最重要的问题-但最终、我认为您的器件过载了、这可能会导致问题的发生。  

    此致!

    帕克·道德森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、帕克先生、

    感谢您的快速回复、

    答案是
    1. 您使用的网络拓扑是什么-(菊花链、脊柱+接线盒、起始、环等) ?   

       答案:  使用半双工模式的菊花链拓扑。

    2. 总线的最大长度是多久?  

      答:近500 MTR。 可提供相同拓扑的 Max Slave 支持。

    3. 您运行的数据速率是多少?   

     答案:从低9600到115200 Buad 速率应支持。

    此外、我通过上拉和下拉至1K、在 A 和 B 之间连接了240欧姆的终端电阻、

    等待答案、我是否以同样的方式管理电阻器、

    还如何?  

    您能否建议相同值的正确值?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、sagar:

    使用菊花链网络拓扑非常好、因为这是 RS 485的首选网络拓扑。 不会有问题。  

    是否在总线上端接了每个节点?  

    是否每个节点在 A 到 VCC 上都有1000欧姆的上拉电阻?  

    每个节点的 B 到 GND 是否都具有1000 Ω 的下拉电阻?

    如果您对上述任何问题的回答是肯定的、则说明设置存在问题。

    1.只应端接第一个节点和最后一个节点。 每个应该为120欧姆- 240欧姆、您很可能会得到明显的反射。 布线也应为~120欧姆。 在500米处 、您不能偏离  

    2.如果要在每个节点上添加上拉和下拉,则最大节点数受以下公式的限制:

    您的 Rbias 值为1000 -执行此操作时、最大节点数少于3个。  

    因此、如果您有10个节点、则1k 电阻器的电阻值需要为10k、这应该没问题。  

    或者您只有1对1k 电阻(在"A"线路上连接到 VCC、在"B"线路上连接到 GND")-不要将它们放置在每个节点上。  

    如果将 Rbias 最大值与每个节点相加、可通过重新排列上述公式得出:

    其中 N 是节点数。  

    您在技术上根本不需要它们-但如果您要保持它们、则需要增加它们。  

    正如我在第一次答复中说过的那样-由于上拉/下拉电阻器、总线很有可能过载。  

    此致!

    帕克·道德森