-
HINTERGRUND
-
Moderne Kraftfahrzeuge sind mit einer beeindruckenden Anzahl und Vielfalt von Sensoren ausgestattet. Zum Beispiel sind Kraftfahrzeuge üblicherweise mit einem Motorpositionssensor ausgestattet, um die Motordrehzahl zu überwachen, den Kraftstoffverbrauch zu schätzen und Motordiagnosen bereitzustellen. Traditionell verwenden derartige „Hochgeschwindigkeits“-Sensoren einen Resolver mit einer analogen Schnittstelle für phasengleiche und Quadraturphasen-Ausgangssignale. Um Schutz vor elektromagnetischen Störungen und Emissionen zu bieten, wird jedes der Ausgangssignale typischerweise als Differenzsignale über ein verdrilltes Drahtpaar unter Verwendung relativ kostspieliger Filter, um die elektromagnetische Verträglichkeit aufrechtzuerhalten, übermittelt. Während eine digitale Schnittstelle für derartige Sensoren potenziell einen robusteren Betrieb bei verringerten Implementierungskosten bietet, können die vorhandenen für Automobilumgebungen geeigneten digitalen Busse die erforderlichen Datenraten nicht unterstützen.
-
KURZDARSTELLUNG
-
Dementsprechend werden hierin ein für Automobilanwendungen geeigneter digitaler Kommunikationsbus sowie Bussteuerungen und Sensoren, die den Bus und dessen zugehörige Kommunikationsverfahren verwenden, offenbart. Ein veranschaulichender Sensor schließt ein: einen Taktsignalgenerator; eine Busschnittstelle, die mit Differenzsignalleitern gekoppelt ist, um periodische Synchronisationsimpulse von einer Bussteuerung zu erkennen; und eine Steuerung, die ein Taktsignal von dem Taktsignalgenerator mit den periodischen Synchronisationsimpulsen abgleicht. Die Busschnittstelle sendet digitale Daten zwischen den periodischen Synchronisationsimpulsen an die Bussteuerung unter Verwendung des Taktsignals, um Symbolübergänge zu steuern.
-
Ein veranschaulichendes Controller-Area-Network schließt ein: eine Bussteuerung, die mit einem Paar Differenzsignalleiter gekoppelt ist, um periodische Synchronisationsimpulse zu übertragen; einen Sensor, der mit dem Paar Differenzsignalleiter gekoppelt ist, um die periodischen Synchronisationsimpulse zu empfangen, wobei der Sensor eine Steuerung aufweist, die ein Taktsignal mit den periodischen Synchronisationsimpulsen abgleicht; und eine Busschnittstelle, die digitale Daten zwischen den periodischen Synchronisationsimpulsen unter Verwendung des Taktsignals an die Bussteuerung sendet, um Symbolübergänge zu steuern.
-
Ein veranschaulichendes digitales Kommunikationsverfahren schließt ein: Generieren eines lokalen Taktsignals; Abgleichen des lokalen Taktsignals mit periodischen Synchronisationsimpulsen von einer Bussteuerung; und Senden digitaler Daten zwischen den periodischen Synchronisationsimpulsen an die Bussteuerung und Verwenden des Taktsignals, um Symbolübergänge zu steuern.
-
Alle vorgenannten Ausführungsformen können einzeln oder zusammen eingesetzt werden, und sie können ferner eine oder mehrere der folgenden optionalen Merkmale in jeder geeigneten Kombination einsetzen: 1. Als Teil des Abgleichens passt die Steuerung eine Periode des Taktsignals so an, dass sie 1/N einer Periode der Synchronisationsimpulse entspricht, wobei N eine ganze Zahl ist. 2. Die Steuerung verwendet Vorderflanken der Synchronisationsimpulse, um die Periode des Taktsignals zu bestimmen. 3. Die Steuerung verwendet Rückflanken der Synchronisationsimpulse, um eine Phase des Taktsignals einzustellen. 4. Als Teil des Abgleichens führt die Steuerung eine Grobkalibrierungsphase durch, bevor die Busschnittstelle mit dem Senden von digitalen Daten beginnt. 5. Als Teil des Abgleichens führt die Steuerung eine adaptive Verfolgungsphase durch, nachdem die Busschnittstelle mit dem Senden von digitalen Daten beginnt. 6. Wandlerelektronik, die Messungen unabhängig von dem Taktsignal sammelt, wobei die Steuerung das Taktsignal verwendet, um die Messungen aufzunehmen und davon die digitalen Daten abzuleiten. 7. Die Steuerung verwendet das Taktsignal, um unabhängig erfasste Messungen aufzunehmen, von denen die digitalen Daten abgeleitet werden. 8. Die aufgenommenen Messungen schließen Zeitstempelinformationen ein.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
- 1 ist ein Blockdiagramm eines veranschaulichenden Controller Area Network.
- 2 ist ein Schaltschema eines veranschaulichenden digitalen Kommunikationsbusses.
- 3 ist ein Zeitdiagramm, das verschiedene veranschaulichende Signalwellenformen im System zeigt.
- 4 ist ein Diagramm von Taktsynchronisationsphasen.
- 5 ist ein Flussdiagramm eines veranschaulichenden Datenübertragungsverfahrens.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Es versteht sich, dass die folgende Beschreibung und die begleitenden Zeichnungen zur Erläuterung und nicht zur Einschränkung der Offenbarung bereitgestellt werden. Mit anderen Worten stellen sie die Grundlage für einen Durchschnittsfachmann bereit, alle Modifikationen, Äquivalente und Alternativen zu verstehen, die in den Schutzumfang der Ansprüche fallen.
-
1 zeigt ein veranschaulichendes Controller Area Network (CAN), wie es in einem Automobilkontext zu finden ist. Eine elektronische Steuereinheit (ECU) 102 ist mit verschiedenen Sensoren 103, einschließlich einer LIDAR-Einheit (Lichtdetektions- und Entfernungsmessungseinheit) 104 und einer Kamera 105 über Punkt-zu-Punkt-Verbindungen, die eine Sterntopologie bilden, gekoppelt. Andere Bustopologien, wie Baum-, Ring- und Daisy-Chain-Topologien können ebenfalls geeignet sein. Um eine automatisierte Fahrerassistenz bereitzustellen, kann die ECU 102 ferner mit einem Satz von Aktoren, wie einem Fahrtrichtungsanzeigeaktor 106, einem Lenkungsaktor 108, einem Bremsaktor 110 und einem Gaspedalaktor 112, verbunden sein. Die ECU 102 kann ferner mit einer interaktiven Schnittstelle 114 gekoppelt sein, um eine Benutzereingabe anzunehmen und eine Anzeige der verschiedenen Messungen und des Systemstatus bereitzustellen. Unter Verwendung der Schnittstelle, der Sensoren und Aktoren kann die ECU 102 automatisiertes Einparken, assistiertes Einparken, Spurwechselassistenz, Hindernis- und Totwinkelerkennung und andere wünschenswerte Merkmale bereitstellen.
-
2 ist eine schematische Darstellung eines veranschaulichenden Datenbusses mit einer Bussteuerung 202 (wie ECU 102) auf einer ersten Leiterplatte 204, die mit einem Sensor 206 auf einer zweiten Leiterplatte 208 gekoppelt ist. Die erste PCB 204 schließt einen Spannungsregler (LDO-Spannungsregler) 210 mit niedriger Abfallspannung und eine Masseverbindung ein, um die zweite PCB 208 über jeweilige Leiter V+, GND mit Strom zu versorgen. Ein Paar Differenzsignalleiter A, B transportieren ein Downlink-Signal von der Bussteuerung 202 zu dem Sensor 206 und ein Uplink-Signal von dem Sensor zu der Bussteuerung.
-
Die PCBs können Abschlussschaltungen 212, 214 einschließen, um eine Impedanzanpassung und/oder elektromagnetische Verträglichkeit durch Dämpfen höherer Frequenzen bereitzustellen. Die Abschlussschaltungen sind hier als zwei gleiche Impedanzen Z1 dargestellt, die zwischen den Leitern A und B in Reihe geschaltet sind, wobei eine optionale Impedanz Z2 zwischen dem Zwischenknoten und Masse gekoppelt ist. Die Impedanzen Z1, Z2 können so gewählt werden, dass sie die gewünschte Tiefpass-Grenzfrequenz bereitstellen.
-
Die veranschaulichte Bussteuerung 202 schließt einen Transceiver 220 zum abwechselnden Senden eines Downlink-Signals TXM und Empfangen eines Uplink-Signals RXM ein. Ein universelles asynchrones Empfänger/Sender-Modul (UART-Modul) 222 formuliert das Downlink-Signal so, dass Befehle und Daten von der Mikrocontrollereinheit (MCU) 224 übertragen werden, und decodiert das Uplink-Signal, um Antworten und Messungen von dem Sensor 206 an die MCU 224 bereitzustellen. Optional (z. B. für Transceiver vom Typ RS485) stellt das UART-Modul 222 ein T/R-Signal an den Transceiver 220 bereit, um zwischen Sende- und Empfangsmodi umzuschalten. CAN-kompatible Transceiver erfordern kein Signal zum Übergang zwischen Sende- und Empfangsmodi. Ein Oszillator 226 stellt ein Taktsignal an das UART-Modul 222 bereit. Die Operationen des UART werden gemäß dem Taktsignal durchgeführt, und somit bestimmt das Taktsignal den Zeitpunkt von Symbolübergängen in dem Downlink-Signal.
-
Der veranschaulichte Sensor 206 schließt in ähnlicher Weise einen Transceiver 230 zum abwechselnden Empfangen des Downlink-Signals RXs und Senden des Uplink-Signals TXs, wobei er optional als Reaktion auf ein T/R-Signal von einem UART-Modul 232 arbeitet, ein. Eine Steuerung 234 empfängt die Downlink-Befehle und -Parameter, die den Betrieb des Sensors konfigurieren, und stellt Messungen von der Wandlerschaltlogik 235 für den UART 232 bereit, die in Upload-Nachrichten umzuwandeln sind. Ein Oszillator 236 stellt ein Taktsignal zur Verwendung durch den UART 232 bereit. Wie weiter unten beschrieben, kann das vom Oszillator 236 erzeugte Taktsignal mit periodischen Synchronisationsimpulsen von der Bussteuerung 202 abgeglichen werden, wodurch dem UART 232 ermöglicht wird, Uplink-Nachrichten mit Symbolen zu generieren, die mit dem vom Oszillator 226 generierten Taktsignal synchronisiert sind.
-
3 zeigt eine veranschaulichende Zeitbeziehung zwischen den verschiedenen Signalwellenformen, die auf dem digitalen Kommunikationsbus vorhanden sein können. Nachdem die Konfiguration des Sensors abgeschlossen ist, sendet die Bussteuerung periodische Synchronisationsimpulse, wie in der Wellenform TXM gezeigt. Die veranschaulichten Impulse sind drei Bitintervalle breit, dies ist jedoch keine Anforderung. Die Wellenform RXs zeigt die Synchronisationsimpulse mit einer geringfügigen Verzögerung aufgrund der Laufzeit durch die Leiter und Schnittstellenelektronik.
-
Der Sensor antwortet mit einer Uplink-Wellenform TXs, hier gezeigt als eine Vorlage für drei UART-Standardbytes, die jeweils ein einzelnes Startbit aufweisen, das dem niedrigstwertigen Bit vorangestellt ist, und ein Stoppbit, das auf das höchstwertige Bit folgt. Zusätzliche Stoppbits können in einigen Systemen bevorzugt sein, und in anderen Systemen kann es bevorzugt sein, die Stoppbits zu überspringen. Andere Nachrichtenformate wären auch geeignet, z. B. eine größere oder geringere Anzahl von Bytes, eine andere Bitreihenfolge und/oder andere Wortlängen zwischen Start- und Stoppbits. Die Wellenform RXM zeigt die Uplink-Wellenform mit einer Verzögerung, um die Laufzeit von dem Sensor zu der Bussteuerung darzustellen.
-
Die letzten zwei Kurven von 3 zeigen die Differenzspannung zwischen den Signalleitern A, B auf der Master- beziehungsweise Sensorseite. (Die Auswirkungen der Ausbreitungsverzögerung sind zur Veranschaulichung übertrieben dargestellt.) Der Sensor kann das Intervall zwischen den Vorderflanken der Synchronisationsimpulse als die Synchronisationsperiodenmessung (PM) verwenden, aus der die Bitperiode (oder allgemeiner „Symbolperiode“) abgeleitet wird, und kann die Rückflanken der Synchronisationsimpulse als den Nullphasenabgleich für den Übertragungssymboltakt verwenden.
-
Der Synchronisations- und Abgleichprozess kann über mehrere Synchronisationsimpulszyklen durchgeführt werden, wie in 4 gezeigt. Eine anfängliche Kalibrierungsperiode beginnt nach dem Einschalten oder wenn der Sensor zurückgesetzt wird. Nach dem Erkennen der Synchronisationsimpulse beginnt der Sensor mit dem Erfassen von Periodenmessungen zwischen den Vorderflanken der Impulse. In einer betrachteten Ausführungsform verwendet der Sensor einen lokalen spannungsgesteuerten Oszillator, der mit einem Zähler oder „Frequenzteiler“ gekoppelt ist. Die Steuerspannung wird auf einen Standardmittelbereichswert eingestellt und das höchstwertige Bit eines Anpassungswerts wird eingestellt. Wenn der nächste Synchronisationsimpuls ankommt, bevor der Zähler abläuft, wird die Steuerspannung um den Anpassungswert erhöht, um die lokale Oszillatorfrequenz zu erhöhen. Umgekehrt, wenn der Zähler abläuft, bevor der nächste Synchronisationsimpuls ankommt, wird die Steuerspannung um den Anpassungswert auf den Offsetwert verringert, um die lokale Oszillatorfrequenz zu verringern. Der Anpassungswert wird dann halbiert, so dass nur sein zweithöchstes Bit aktiviert wird. Der Prozess wird wiederholt, bis nur das niedrigstwertige Bit des Anpassungswerts aktiviert ist.
-
Sobald der kleinste Anpassungswert erreicht und angelegt ist, kann der Sensor vom Kalibrierungsmodus in den Verfolgungsmodus übergehen. Während des Verfolgungsmodus sendet der Sensor Messdaten als Reaktion auf jeden Synchronisationsimpuls, überwacht aber die Periode zwischen Synchronisationsimpulsen und addiert oder subtrahiert den minimalen Anpassungswert zu bzw. von der Steuerspannung nach jeder Periodenmessung. In einigen Implementierungen kann der Sensor erkennen, wann die Anpassungen regelmäßig das Vorzeichen wechseln und einen Fehlerfilter anwenden können oder anderweitig die Anzahl von Synchronisationsimpulsen erhöhen können, die für jede Anpassung der Steuerspannung verwendet werden.
-
5 ist ein Flussdiagramm eines veranschaulichenden Datenkommunikationsverfahrens, das von einer Sensorvorrichtung implementiert werden kann. In Block 501 überwacht der Sensor die Leiter auf eine Impulsflanke im Differenzsignal. Der Sensor prüft in Block 502, ob die Flanke die Vorderflanke eines Synchronisationsimpulses ist, und wenn nicht, bestimmt, ob die Kalibrierungsphase in Block 504 abgeschlossen ist. Falls nicht, kehrt die Steuerung zu Block 501 zurück. Andernfalls verwendet der Sensor in Block 506 die Flanke, um die Übertragung eines Datenrahmens an die Bussteuerung einzuleiten. Es wird erwartet, dass die Messdaten, die übertragen werden, unabhängig von den Synchronisationssignalen erfasst werden, und somit können Implementierungen, die eine erhöhte Präzision erfordern, Messzeitstempel mit den Messdaten übertragen. Nachdem der Datenrahmen abgeschlossen ist, kehrt die Steuerung zu Block 501 zurück.
-
Wenn in Block 502 der Sensor bestimmt, dass die Flanke die Vorderflanke ist, bestimmt der Sensor in Block 508, ob die lokale Oszillatorfrequenz zu hoch oder zu niedrig ist. In Block 510 bestimmt der Sensor, ob die Kalibrierungsphase andauert, und wenn ja, wird der Zeitfehler dazu verwendet, die Oszillatorfrequenz in Block 512 unter Verwendung des Grobanpassungswerts anzupassen. Wie zuvor beschrieben, nimmt der Grobanpassungswert mit jedem Zyklus ab, bis die Kalibrierungsphase abgeschlossen ist.
-
Wenn in Block 510 bestimmt wird, dass die Kalibrierungsphase abgeschlossen ist, prüft der Sensor in Block 514, ob eine anfängliche Verfolgungsphase abgeschlossen ist. Während der anfänglichen Verfolgungsphase führt der Sensor nur Anpassungen des niedrigstwertigen Bits der Oszillatorsteuerspannung (LSB-Anpassungen) durch, um eine Feinanpassung der Oszillatorperiode in Block 516 bereitzustellen. Nachdem die lokale Oszillatorfrequenz/-periode konvergiert, kann der Sensor eine adaptive Optimierung unter Verwendung von Zeitfehlermessungen von mehreren Synchronisationsimpulszyklen in Block 518 bereitstellen.
-
Obwohl die in 5 gezeigten und beschriebenen Vorgänge zum Zweck der Erläuterung als sequenziell behandelt werden, kann das Verfahren in der Praxis über mehrere gleichzeitig arbeitende Komponenten mit integrierten Schaltungen ausgeführt werden. Die sequenzielle Erörterung soll nicht einschränkend sein.
-
Es wird erwartet, dass die Taktsynchronisation, die zwischen dem Sensor und der Bussteuerung erzielt wird, erheblich höhere Datenübertragungsraten ermöglicht, einschließlich Raten über etwa 8 Mbit/s auf Bussen, die andernfalls dem CAN-FD-Automobilbusstandard entsprechen. Im Gegensatz zu anderen Bustypen, wie Busse, bei denen eine Bussteuerung ein Frage- & Antwortprotokoll verwendet, um Daten von mehreren adressierbaren Sensorvorrichtungen selektiv abzurufen, ermöglicht die offenbarte synchronisierte Schnittstellentaktkonfiguration einen Sensor unter Verwendung eines minimalen, aber robusten Signalprotokolls, um der Steuerung kontinuierlich Messinformationen zu liefern, ohne die Art und Weise einzuschränken, in der der Sensor die Messinformationen erfasst.