Der 485-Bus ist eine häufig verwendete Methode zur Differenzsignalübertragung. Es bietet die Vorteile einer starken Entstörungsfähigkeit, einer großen Übertragungsentfernung und einer großen Anzahl von Knoten. Es wird häufig in der Kommunikation, der industriellen Automatisierung und anderen Bereichen eingesetzt. In praktischen Anwendungen kann es jedoch zu einem Problem kommen, nämlich ob der 485-Bus Pulldown-Widerstände auf den A- und B-Leitungen hinzufügen muss und welche Widerstandsgrößen geeignet sind. In diesem Artikel wird dieses Problem analysiert und erläutert.
Wie funktioniert der Bus 485?
Zunächst müssen wir das Funktionsprinzip und die Signaleigenschaften des 485-Busses verstehen. Gemäß dem RS-485-Standard überträgt der 485-Bus Differenzsignale über zwei Leitungen (A und B). Anhand der Spannungsdifferenz zwischen den beiden Leitungen wird beurteilt, ob das aktuelle Datenbit 0 oder 1 ist.
Die Daten während der 485-Übertragung haben drei Zustände:
- Wenn die Spannungsdifferenz zwischen A und B VAB = UA-UB größer als +200 mV ist, ist der Logikausgang des 485-Transceivers 1;
- Wenn die Spannungsdifferenz zwischen A und B VAB = UA-UB weniger als -200 mV beträgt, ist die Ausgangslogik des 485-Transceivers 0;
- Wenn die Spannungsdifferenz zwischen A und B VAB = UA-UB zwischen -200 mV und +200 mV liegt, kann der 485-Transceiver einen hohen oder niedrigen Pegel ausgeben, was ein unsicherer Zustand ist.
Wie vermeide ich Unsicherheit?
Unter normalen Umständen hoffen wir, dass die vom Empfänger empfangenen Daten nur 0 oder 1 sein können. Auf dem 485-Bus können keine unsicheren Zustände auftreten. Unter welchen Umständen wird also ein unsicherer Zustand eintreten?
Es gibt hauptsächlich zwei Situationen:
- Wenn sich der 485-Bus im Ruhezustand befindet, befinden sich alle 485-Transceiver im Empfangszustand und kein Transceiver steuert den Bus. Da zu diesem Zeitpunkt keine Signalquelle eine Differenzspannung auf dem Bus erzeugt, sind die Spannungen auf den A- und B-Leitungen grundsätzlich gleich, d. h. die Differenzspannung beträgt grundsätzlich 0.
- Wenn sich der 485-Bus im Leerlaufzustand befindet, das heißt, wenn ein bestimmter 485-Transceiver vom Bus getrennt ist. Da der getrennte Transceiver zu diesem Zeitpunkt keinen Einfluss mehr auf den Bus hat, ist die Differenzspannung zwischen den verbleibenden Transceivern im Wesentlichen Null.
Wenn der 485-Treiberausgang nicht ausreicht, um zu bewirken, dass der Absolutwert der Spannungsdifferenz zwischen A und B größer als 200 mV ist, kann der 485-Bus-Signalstatus nicht mehr den Treiberstatus widerspiegeln und der Empfänger kann das richtige Signal nicht erkennen.
- Wenn der 485-Bus in einem unsicheren Zustand erscheint, führt dies zu Kommunikationsfehlern oder Ausfällen. Wenn beispielsweise ein 485-Transceiver davon ausgeht, dass er in einem unsicheren Zustand ein Daten-0-Signal empfangen hat, und einen niedrigen Pegel an die serielle Schnittstelle ausgibt, entspricht dies für die UART-Kommunikation einem Startbit (Startbit), das verursacht wird Fehler. Urteil oder Irrtum; Wenn ein bestimmter 485-Transceiver in einem unsicheren Zustand abwechselnd hohe und niedrige Pegel ausgibt, stört er bei der UART-Kommunikation die normalen Daten und führt dazu, dass der UART-Empfänger abnormale Daten empfängt.
Um zu verhindern, dass sich der 485-Bus in einem unsicheren Zustand befindet, haben wir diese beiden Anomalien analysiert und festgestellt, dass die Ursache dieser beiden Anomalien darin liegt, dass die AB-Leitung im Empfangszustand des Transceivers die normale Spannungsdifferenz nicht aufrechterhalten kann. Um die korrekte Spannungsdifferenz auch dann aufrechtzuerhalten, wenn der Bus inaktiv oder getrennt ist, müssen wir Pulldown-Widerstände auf den A- und B-Leitungen hinzufügen (normalerweise ist A mit einem Pullup-Widerstand und B mit einem Pulldown-Widerstand verbunden). ), um sicherzustellen, dass der Bus im Leerlauf ist. Oder es liegt eine feste Differenzspannung im Leerlaufzustand an. Wie nachfolgend dargestellt:
Welche Faktoren müssen wir also bei der Auswahl der Größe des Pulldown-Widerstands berücksichtigen? Beinhaltet vor allem folgende Aspekte:
- Die Pull-up- und Pull-down-Widerstände sollten klein genug sein, um sicherzustellen, dass die Differenzspannung im Leerlauf- oder Leerlaufzustand größer als +200 mV oder kleiner als -200 mV ist (je nach Situation ausgewählt), wodurch ein unsicherer Zustand vermieden wird .
- Die Pull-Up- und Pull-Down-Widerstände sollten groß genug sein, um den Stromverbrauch und die Wärme zu reduzieren, ohne die Antriebsfähigkeit und Ausgangsspannung des 485-Transceivers zu beeinträchtigen.
- Die Pull-Up- und Pull-Down-Widerstände sollten zur Eingangsimpedanz, zum Anschlusswiderstand, zur Buslänge, zur Anzahl der Knoten und anderen Faktoren des 485-Transceivers passen, um die Impedanzanpassung und Signalintegrität des Busses sicherzustellen.
Wenn sich der Transceiver zunächst im ausgeschalteten Zustand befindet, werden die Spannungen von Transceiver A und B gemeinsam von RU, RT, RD und RIN bestimmt, d. h.:
Normalerweise verwenden wir für RU und RD denselben Wert, dann kann die Formel wie folgt vereinfacht werden:
Zu diesem Zeitpunkt gehen wir davon aus, dass der interne Differenzeingangswiderstand des Chips RIN = 15 kΩ, VCC = 3,3 V und RT = 120 R beträgt. Wir können das zu diesem Zeitpunkt berechnen: 0Ω≤R≤239Ω. Solange R ≤ 232,5 kΩ ist, können A und B natürlich im Falle einer Unterbrechung erfüllt werden. Die Leitung befindet sich im Datenstatus 1.
Berücksichtigen Sie für den Ruhezustand, dass die meisten Knotengeräte RU- und RD-Widerstände an den A- und B-Leitungen und RT-Widerstände an den Anschlüssen hinzufügen. Wie nachfolgend dargestellt:
Aus dem vorherigen Ableitungsprozess wissen wir, dass der einzige Unterschied der erhöhte Eingangswiderstand und der erhöhte Pull-Up- und Pull-Down-Widerstand aufgrund der Hinzufügung von Knoten ist. Daher können wir die folgende Formel basierend auf der obigen Schaltung ableiten:
In dieser Formel ist m die Anzahl der Knoten mit Pulldown-Widerständen und n die Anzahl der Knoten. Wir definieren die Differenz zwischen Busklemme A und Klemme B als mindestens 200 mA, sodass wir diese Formel wie folgt vereinfachen können:
Mit dieser Formel lässt sich der Wert der Pull-Up- und Pull-Down-Widerstände anhand der tatsächlichen Anzahl der Knoten ermitteln.
Das nach dieser Formel errechnete Ergebnis ist jedoch nur ein Idealwert. Bei der tatsächlichen Verwendung werden die Pull-Up- und Pull-Down-Widerstände im Allgemeinen innerhalb des Knotens bestimmt. Verschiedene Knotengeräte können über unterschiedliche interne Pull-Up- und Pull-Down-Widerstände verfügen. Um den Wert dieses Widerstands zu ermitteln, müssen wir die Anzahl der Knoten berücksichtigen. Um den Wert der Pull-Up- und Pull-Down-Widerstände zu bestimmen, müssen Sie auch die Belastbarkeit des Treiberchips berücksichtigen. Die Pull-Up- und Pull-Down-Widerstände können nicht sehr klein eingestellt werden.
Kurz gesagt, der 485-Bus muss der AB-Leitung einen Pulldown-Widerstand hinzufügen, hauptsächlich um sicherzustellen, dass der Bus im Ruhezustand oder im offenen Zustand eine feste Differenzspannung hat, wodurch Kommunikationsfehler oder Ausfälle durch unsichere Zustände vermieden werden. Bei der Auswahl der Größe des Pulldown-Widerstands müssen Faktoren wie Stromverbrauch, Antriebsfähigkeit, Impedanzanpassung usw. umfassend berücksichtigt werden, um die Stabilität und Zuverlässigkeit der Kommunikation sicherzustellen.