-
HINTERGRUND DER ERFINDUNG
-
Eine Ausführungsform bezieht sich auf konfigurierbare Bildschirmanzeigen.
-
Bei Computern wird ein Zugreifen auf graphische Anzeigebildschirme und ein Steuern dieser aus der Ferne, wie beispielsweise Fern-Desktop-Dienste, genutzt, wobei es einem entfernten Benutzer ermöglicht wird, auf den entfernten Controller zuzugreifen und die Steuerung des Programms, das an dem entfernten Computer ausgeführt wird, zu übernehmen. Der Benutzer des Host-Computers kann den Desktop des entfernten Computers sehen und kann Anwendungen, die an dem entfernten Computer gespeichert sind, öffnen und ausführen. Solche Dienste ermöglichen dem entfernten Benutzer jedoch nur einen Zugriff auf die bestehenden Anwendungen, die an dem Host-Computer gespeichert sind, und die Steuerung jener. Das heißt, der entfernte Benutzer ist auf nur jene Anwendungen beschränkt, die sich aktuell an dem Host-Computer befinden.
-
Solche Fern-Desktop-Dienste sind oftmals zwei festen Endgeräten zugehörig. Wenn ein mobiles Endgerät, wie beispielsweise ein Fahrzeug, umfasst ist, ist eine dynamische Kanalbandbreite aufgrund von Fahrzeugbewegungen ein Problem. Ferner ist die Latenzzeit ein Hauptproblem, wenn die Distanz zwischen dem mobilen Endgerät und dem festen Endgerät lang ist. Derartige Datenübertragungsprobleme umfassen, dass die Quelle die Senke überhäuft, da die Quelle immer weiter Informationen mit einer festen Rate, und in einigen Fällen mit einer Rate und einem Volumen, die die Senke nicht handhaben kann, überträgt.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Ein Vorteil einer Ausführungsform ist die Verwendung eines adaptiven Sitzungsprotokolls, das eine Geschwindigkeit, mit der Daten von dem entfernten System zu dem Host-System übertragen werden, dynamisch steuert, indem eine Abtastrate des Bildspeichers gemäß Paketindizes an einer Transportschicht des Servers dynamisch angepasst wird, was ein Überhäufen einer Senke vermeidet und die Bandbreite des Kommunikationskanals auf ein minimales erforderliches Niveau reduziert.
-
Ferner ermöglichen die hierin beschriebenen Ausführungsformen einer entfernten Entität, graphische Anwendungsdaten an eine oder mehrere graphische Host-Anzeigeeinheiten zu übertragen, die primär anderen Anwendungen zugeordnet sind, und ein Benutzer des entfernten Endgeräts kann eine Anweisungsgraphik an einer graphischen Host-Anzeigeeinheit anzeigen, um den Benutzer der graphischen Host-Anzeigeeinheit zu lehren, wie ein Merkmal des Systems (z. B. Fahrzeugs), das nicht notwendigerweise der graphischen Host-Anzeigeeinheit zugehörig ist, zu betreiben ist, oder im Namen des Benutzers durch den Benutzer angeforderte Operationen durchführen. Als Ergebnis wird die Anwendung, wenn eine Ausführung an dem entfernten System an die graphische Host-Anzeigeeinheit übertragen und daran projiziert wird, immer noch durch den entfernten Benutzer gesteuert, um eine Anweisungsgraphik bereitzustellen, die sich auf ein beliebiges Merkmal bezieht, für das ein Host-Benutzer Unterstützung anfordern kann. Das adaptive Sitzungsprotokoll, das auf den Transfer und die Projektion von Daten an dem Host-System angewandt wird, verbessert das Leistungsvermögen durch Verringern der Bandbreitennutzung und Reduzieren der Latenzzeit.
-
Eine Ausführungsform zieht ein Verfahren zum Steuern einer graphischen Anzeigeeinheit aus der Ferne in Betracht. Anfordern, durch ein Host-System, von Unterstützung eines entfernten Systems in Bezug auf eine jeweilige Anwendung, wobei das Host-System zumindest eine graphische Host-Anzeigeeinheit umfasst, die eine Betriebsgraphik anzeigt, die sich auf eine zugeordnete Anwendung des Host-Systems bezieht. Das entfernte System umfasst eine entfernte graphische Anzeigeeinheit. Das entfernte System steht in drahtloser Verbindung mit dem Host-System. Auf die zumindest eine graphische Host-Anzeigeeinheit des Host-Systems wird durch das entfernte System zugegriffen. Graphische Anwendungsdaten, die sich auf die jeweilige Anwendungsanzeige beziehen, werden von dem entfernten System an das Host-System übertragen. Eine graphische Anweisungsinformation wird an zumindest eine graphische Host-Anzeigeeinheit projiziert; die zumindest eine graphische Host-Fahrzeuganzeigeeinheit wird durch das entfernte System aus der Ferne gesteuert, indem für einen Benutzer des Host-Systems eine Anweisungsinformation in Bezug auf die jeweilige Anwendung angezeigt wird. Ein adaptives Sitzungsprotokoll steuert eine Geschwindigkeit, mit der Daten von dem entfernten System an das Host-System übertragen werden.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Fahrzeugbildschirm-Fernzugriffsystem.
-
2 ist ein Blockdiagramm der Systemarchitektur.
-
3 ist eine graphische Darstellung des Drahtloskommunikationskanals und eines Jitter-Puffers
-
4 ist ein Flussdiagramm des Kommunikationsprotokolls zwischen dem Host-System und dem entfernten System.
-
DETAILLIERTE BESCHREIBUNG
-
1 veranschaulicht ein Fahrzeugbildschirm-Fernzugriffsystem 10. Das System 10 umfasst ein Host-System 12 und ein entferntes System 14. Das Host-System 12 kann ein Fahrzeug umfassen, ist jedoch nicht darauf beschränkt. Zum Beispiel kann das System 10 in Kraftfahrzeugsystemen, Luftfahrzeugsystemen, Ausbildungssystemen oder einem anderen kein Kraftfahrzeug betreffenden System verwendet werden. Das Host-System 12 umfasst zumindest eine graphische Host-Anzeigeeinheit 16, und das entfernte System umfasst ein entferntes Endgerät 18. Die graphische Host-Anzeigeeinheit 14 umfasst eine graphische Benutzerschnittstelle (GUI von graphical user interface), um Benutzern zu ermöglichen, mit elektronischen Einrichtungen über graphische Symbole und andere Graphiken oder visuelle Indikatoren, im Gegensatz zu textbasierten Nachrichten, in Interaktion zu stehen. Dies ermöglicht auch die Verwendung von graphischen Eingaben im Gegensatz zu einem Eingeben von Befehlen.
-
Die graphische Host-Anzeigeeinheit 16 kann eine Betriebsgraphik in Bezug auf eine oder mehrere zugeordnete Fahrzeuganwendungen anzeigen. Zum Beispiel kann die graphische Host-Anzeigeeinheit 16 Teil einer Einheit einer vorderen Konsole sein, die eine Graphik für Multimediasteuerungen und -operationen bereitstellt; allerdings ist die GUI rekonfigurierbar, um eine Rekonfiguration der Anzeige anders als die zugeordnete Graphik, die typischerweise an der Anzeige angezeigt wird, zu ermöglichen.
-
Das entfernte Endgerät 18 des entfernten Systems 14 ist eine computerbasierte Einrichtung oder ähnliches, die von dem Host-System 12 entfernt ist. Das entfernte System 12 steht drahtlos mit dem entfernten System 12 in Verbindung. Sowohl das Host-System 12 als auch das entfernte System 14 können einen zugeordneten Sender und Empfänger zur Kommunikation umfassen oder können gemeinsam genutzte Sender und Empfänger verwenden, die von anderen Systemen in dem Host-System bzw. der Vorrichtung, in der sich das entfernte System 14 befindet, verwendet werden. Alternativ können das Host-System 12 und das entfernte System 14 unter Verwendung von OnStar® in Verbindung stehen. OnStar® ist ein teilnahmebasierter Kommunikationsdienst, der derzeit bei von General Motors hergestellten Fahrzeugen angeboten wird und Dienste bereitstellt, die fahrzeuginterne Sicherheit, Ferndiagnosesysteme und eine Turn-by-Turn-Navigation über eine fahrzeugbasierte Kommunikationseinheit, die eine Drahtloskommunikationsverbindung zwischen dem Fahrzeug und der entfernten Infrastruktur bereitstellt, umfassen, jedoch nicht darauf beschränkt sind. Alternativ kann ein anderes Ad-hoc-Drahtloskommunikationsnetz als OnStar verwendet werden.
-
Vorzugsweise ist das Host-System mit einer Long-Term Evolution-Datenleitung (LTE-Datenleitung von Long-Term Evolution data pipe) ausgestattet, die für eine drahtlose Übermittlung von Hochgeschwindigkeitsdaten für mobile Einrichtungen und andere Datenendgeräte sorgt. Diese Netztechnologie erhöht die Kapazität und Geschwindigkeit unter Verwendung einer anderen Funkschnittstelle zusammen mit Kernnetzverbesserungen.
-
2 zeigt ein Flussdiagramm für eine Systemarchitektur des Systems 10. Datenfluss und Kommunikation erfolgen sowohl vorwärts (z. B. Anzeigezugriff) als auch rückwärts (z. B. Fernbetrieb). Das System arbeitet, um eine jeweilige Graphik an der Anzeige des Host-Fahrzeugs anzuzeigen, die durch das entfernte Endgerät gesteuert wird. Die jeweiligen Graphiken und Anleitungen, die an jeder der graphischen Anzeigeeinheiten angezeigt werden, können sich auf eine andere Information als das beziehen, für dessen Anzeige jede graphische Host-Anzeigeeinheit primär zugeordnet ist. Während beispielsweise eine graphische Fahrzeuganzeigeeinheit primär Multimediasteuerungen anzeigen kann, kann die Anzeige ausgestaltet sein, um durch die Unterstützungseinrichtung andere Anleitungen anzuzeigen als jene, die sich primär auf Multimediasteuerungen beziehen. Der Vorteil ist, dass eine beliebige fahrzeugbezogene Funktion, die Fahrzeugfunktionalität, Armaturenbrettsteuerfunktionalität, Zubehöroperationen umfasst, jedoch nicht darauf beschränkt ist, oder eine beliebige andere Information, die sich auf den Betrieb der Fahrzeugfunktion oder Zubehörfunktion bezieht, dem Benutzer über die graphische Host-Anzeigeeinheit dargestellt und durch eine entfernte Entität gesteuert werden kann. Dies ermöglicht einem Benutzer des Fahrzeugs, Anweisungen bezüglich dessen, wie eine Fahrzeugfunktion zu betreiben ist, anzufordern und zu empfangen, wobei durch eine entfernte Entität gesteuerte graphische Anzeigen verwendet werden. Alternativ kann eine entfernte Entität im Namen des Fahrers Fahrzeugsteuerungen betreiben oder aus der Ferne Fahrzeugsysteme konfigurieren.
-
In 2 weisen die Infrastruktur des Host-Systems 12 und die Infrastruktur des entfernten Systems 14 ähnliche Architekturen auf, und auf diese Weise erfordert die Ende-zu-Ende-Lösung keinen Standard, da beide Systeme durch ein gleiches Protokoll überwacht werden.
-
Das Host-System 12 umfasst eine oder mehrere graphische Host-Anzeigeeinheiten 16, eine graphische Host-Codec-Lösung 20 und einen Host-Anzeige-Client/Server 22. Ähnlich umfasst das entfernte System 14 eine entfernte graphische Anzeigeeinheit 24, eine entfernte graphische Codec-Lösung 26 und einen entfernten Anzeige-Client/Server 28. Jedes der Systeme kann einen jeweiligen Prozessor zum Ausführen der Funktionen einsetzen oder kann gemeinsam genutzte Prozessoren in jedem jeweiligen System verwenden. Sowohl das Host-System 12 als auch das entfernte System 14 können als Server zum Bereitstellen von Daten oder Client zum Abrufen der Daten fungieren.
-
Bei einer Ausführungsform, bei der das entfernte System 12 der Server ist und das Host-System 14 der Client ist, tritt das Host-System 12 in Ansprechen auf eine Anforderung durch einen Benutzer des Host-Fahrzeugs 12 mit dem entfernten System 14 in Kontakt und fordert es Unterstützung für einen Betrieb an. Die Anforderung wird über einen Drahtloskommunikationsdienst 30 übermittelt. Der Dienst kann ein Dienst, wie beispielsweise ein Drahtloszellulardienst, sein oder kann ein Ad-hoc-Netz sein. In Ansprechen auf die Kommunikationsanforderung identifiziert ein Bediener des entfernten Endgeräts die jeweilige Benutzeranwendung 32, für die der Bediener des Host-Systems Unterstützung anfordert.
-
Das System identifiziert eine geeignete graphische Codec-Lösung 22 zum Komprimieren der Daten von der Benutzeranwendung 32, die an das Host-System 12 und die Ziel-Host-Anzeige 16 übertragen werden sollen. Die graphische Codec-Lösung 22 ist ein Komprimierung-Dekomprimierung-Algorithmus zum Codieren eines Datenstroms zur Übertragung an das Host-System 12 über den Kommunikationsdienst 30.
-
Der entfernte Server ermöglicht eine gemeinsam genutzte Dateninformation oder eine andere Hardware- und Softwarequelle für das Host-System 12.
-
Der Host-Client ermöglicht einem Benutzer des Fahrzeugs, Zugriff auf die Daten, die durch das entfernte System übertragen werden, zu erhalten. Der Host-Client erhält die durch den entfernten Server empfangenen Daten.
-
Die graphische Host-Codec-Lösung dekomprimiert die durch den Host-Client empfangenen Daten. Die dekomprimierten Daten werden an der graphischen Anzeigeeinheit graphisch angezeigt. Als Ergebnis können die Anweisungen zur Verwendung einer Anwendung 34, die durch das Host-System verwendet wird, an die Host-Anzeigeeinheit projiziert werden, obwohl die Anzeigeeinheit primär für eine andere Anwendung entworfen wurde. Dies ermöglicht einem sachkundigen Fachmann für die Infrastruktur des entfernten Systems, graphische Anleitungen an den graphischen Anzeigebildschirm des Host-Systems zu projizieren, um den Benutzer des Host-Systems zu unterrichten, wie eine jeweilige Funktion oder Operation einer Anwendung zu verwenden ist, oder das System im Namen oder unter der Überwachung des Benutzers zu betreiben.
-
Es ist zu verstehen, dass das Fahrzeug mehrere rekonfigurierbare graphische Host-Anzeigeeinheiten (z. B. Mittelkonsole und Armaturenbrett) umfassen kann. Es wird eine Übermittlung von der entfernten Entität an das Host-System übermittelt, welches mit jeder der graphischen Host-Anzeigeeinheiten im Fahrzeug verbunden ist oder diese ansprechen kann. Der Zugriff auf jede der graphischen Host-Anzeigeeinheiten kann auch gleichzeitig erfolgen. Beispielsweise könnte eine Basisinformation, wie beispielsweise der Bedienername, an einer graphischen Mittelkonsolenanzeige angezeigt werden, während eine Anweisungsinformation an einer graphischen Armaturenbrettanzeige angezeigt werden könnte.
-
Es sollte auch verstanden werden, dass die Operationen, wie sie hierin beschrieben sind, in der Vorwärtsrichtung oder Rückwärtsrichtung verwendet werden können. Beispielsweise fungiert das entfernte System in einer Fahrzeugumgebung, wenn ein Benutzer lernen muss, wie eine Geschwindigkeitsregelungseinrichtung zu betreiben ist, als Server und fungiert das Host-System als Client. Ein Bevollmächtigter des entfernten Systems kann seinen eigenen Desktop-Bildschirm direkt an die graphische Anzeigeeinheit des Fahrzeugs projizieren. Der Bevollmächtigte kann den Benutzer des Fahrzeugs durch eine Anleitung führen, die graphisch die Schritte, wie die Geschwindigkeitsregelungseinrichtung zu betreiben ist, darstellt, indem der Desktop des Bevollmächtigten an der graphischen Anzeige des Fahrzeugs angezeigt wird.
-
Für einen Betrieb in Rückwärtsrichtung könnte ein Kunde, für den eine neu eingeführte Anwendung oder ein neu eingeführtes Merkmal neu ist, mit dem Bevollmächtigten des entfernten Systems hinsichtlich einer Unterstützung in Kontakt treten. In diesem Fall, in dem die Anwendung oder das Merkmal eine der primären Funktionen ist, die die graphische Fahrzeuganzeigeeinheit anzeigt, könnte der Bevollmächtigte des entfernten Systems aus der Ferne auf die graphische Fahrzeuganzeigeeinheit zugreifen und kann er die graphische Fahrzeuganzeigeeinheit des Fahrzeugs von dem entfernten Ort steuern. Unter diesen Umständen ist das Fahrzeugsystem der Server und ist das entfernte System der Client, wobei das Fahrzeugsystem Anwendungsdaten an das entfernte System sendet, sodass das entfernte System graphisch erstellen und anzeigen kann, was der Benutzer an seiner Anzeige sieht.
-
In beiden Fällen muss eine Ende-zu-Ende-Lösung keinen Standard darstellen, da beide Enden durch den Bevollmächtigten des entfernten Endgeräts unter Verwendung des gleichen Protokolls gesteuert werden.
-
3 zeigt eine graphische Darstellung des Drahtloskommunikationskanals und Puffers unter Verwendung eines Ende-zu-Ende-Sitzungsprotokolls, das verwendet wird, um die Geschwindigkeit zu überwachen, mit der die graphische Anzeigeeinheit einer Quelle den erfassten Bildspeicher an eine graphische Anzeigeeinheit einer Senke sendet. Dies vermeidet, dass die Quelle die Senke unnötig überhäuft, und passt die zellulare Bandbreite an ein minimales für eine Übertragung erforderliches Niveau an. Kasten 40 stellt den drahtlosen Kanal dar und Kasten 42 stellt einen Jitter-Puffer an der Senke dar. Die Senke hält eine optionale Jitter-Puffergröße {n = f(App, BW)} aufrecht. Wenn der Jitter-Puffer an der Senke verbraucht ist, benachrichtigt die Senke die Quelle, um einen anderen Bildspeicher zu senden. Wenn die Quelle keine Anweisungen von der Senke, einen Bildspeicher zu senden, empfängt, sendet die Quelle keine weiteren Aktualisierungen. Daher umfasst das grundlegende Konzept ein dynamisches Anpassen einer Abtastrate des Bildspeichers gemäß Paketindizes an einer Transportschicht des Servers.
-
4 zeigt das Kommunikationsprotokoll zwischen dem Host-System und dem entfernten System. Bei diesem Beispiel ist das Host-System das Fahrzeug 50 und ist das entfernte System ein Call Center 52, das eine Unterstützung für einen Benutzer des Fahrzeugs bereitstellt. Kasten 54 stellt einen Bildspeicher dar. Ein Bildspeicher ist ein Abschnitt eines RAM, der eine Bitmap umfasst. Die Bitmap wird für eine graphische Anzeige von einem Speicherpuffer getrieben, der einen vollständigen Daten-Frame enthält. Die Daten in dem Speicherpuffer umfassen Farbwerte für jedes Pixel, das an der graphischen Anzeigeeinheit angezeigt wird. Der Umfang des Speichers, der erforderlich ist, um den Bildspeicher zu treiben, hängt von der Auflösung des Ausgangssignals ab. In einem Bildspeicher verfolgt ein elektrischer Strahl einen Pfad von links nach rechts und von oben nach unten über den gesamten graphischen Anzeigebildschirm. Zu einem gleichen Zeitpunkt wird eine Farbinformation für jeden Punkt an dem Bildschirm von dem Bildspeicher erhalten, wodurch ein Satz von Pixeln erzeugt wird.
-
In Kasten 56 wird eine Abtastrate (r) des Bildspeichers identifiziert.
-
In Kasten 58 wird ein AVC-Codierer bei den abgetasteten Daten von dem Bildspeicher verwendet.
-
In Kasten 60 werden die Daten von dem Call Center an das Fahrzeug übertragen, wobei ein Zellulardienst, eine Cloud oder ähnliches in Kasten 62 verwendet wird. Ferner werden Rückkopplungssteuerungen (CTL) zum Anpassen der Abtastrate, falls erforderlich, bereitgestellt.
-
In Kasten 64 werden die Daten an einem Empfangspuffer empfangen.
-
In Kasten 66 werden die empfangenen Daten einem AVC-Decodierer zum Decodieren der Daten bereitgestellt.
-
In Kasten 68 werden die decodierten Daten an die graphische Anzeigeeinheit des Fahrzeugs projiziert.
-
Das folgende Protokoll wird zum Regulieren der durch den Bildspeicher bereitgestellten Daten angewandt. Ein Index eines aktuellen ausgehenden TCP-Pakets ist durch p0 dargestellt. Ein Index eines jüngsten rückgemeldeten TCP-Pakets ist durch p1 dargestellt. Die Abtastrate für den Bildspeicher ist durch r dargestellt, und r0 ist die niedrigste durch das System unterstützte Abtastrate.
-
Das Protokoll lautet wie folgt:
wobei p
0 der Index des aktuellen ausgehenden Pakets ist und wobei p
1 der Index des jüngsten rückgemeldeten Pakets ist, C
0 ein Maximum (p
0 – p
1) während eines Abtastintervalls ist, K_I_INTERVAL eine kalibrierbare Konstante ist, die das Intervall spezifiziert, das erforderlich ist, um die Abtastrate zu erhöhen, und K_D_INTERVAL ein Abtastintervall ist, das eine kalibrierbare Konstante ist, die das Intervall spezifiziert, das erforderlich ist, um die Abtastrate zu verringern.
-
Die Prinzipien des Betriebs umfassen ein Beginnen mit einer niedrigsten Abtastrate r. Die Abtastrate r wird erhöht, wenn die Differenz zwischen dem Index des ausgehenden TCP-Pakets und dem Index eines jüngsten rückgemeldeten TCP-Pakets (p0 – p1) für eine vorbestimmte Zeitdauer (z. B. K_I_INTERVAL beträgt 5 s) im Wesentlichen konstant ist. Wenn sich die Differenz zwischen dem Index des ausgehenden TCP-Pakets und dem Index eines jüngsten rückgemeldeten TCP-Pakets (p0 – p1) für eine zweite vorbestimmte Zeitdauer (z. B. K_I_INTERVAL beträgt 1 s) erhöht, wird die Abtastrate r sofort verringert. Daher benachrichtigt, wenn ein Jitter-Puffer an dem Fahrzeug verbraucht ist, das Fahrzeug das Call Center, um einen weiteren Bildspeicher zu senden. Wenn das Call Center keine Anforderungen von dem Fahrzeug empfängt, sendet das Call Center keine weiteren Aktualisierungen. Dies vermeidet, dass das Call Center das Fahrzeug unnötig überhäuft. Dieses Protokoll minimiert die Latenzzeit bei gleichzeitigem Maximieren der Abtastrate und Reduzieren der Übermittlungsbandbreite auf ein minimales erforderliches Niveau im Vergleich zu Systemen, die Fern-Desktop-Dienste verwenden. Es ist zu verstehen, dass die Intervallzeiten für K_I_INTERVAL und K_D_INTERVAL beispielhaft sind und andere Intervallzeiten verwendet werden können.
-
Während bestimmte Ausführungsformen der vorliegenden Erfindung ausführlich beschrieben wurden, wird der Fachmann, den diese Erfindung betrifft, verschiedene alternative Entwürfe und Ausführungsformen zum Ausführen der Erfindung, wie sie durch die folgenden Ansprüche definiert ist, erkennen.